package util.form.respuesta;

import util.android.form.respuesta.CheckBoxInput;
import util.android.form.respuesta.SpinnerInput;
import util.android.widgets.StringBusquedaView;
import util.android.widgets.StringSpinner3View;
import util.form.respuesta.listener.OnCambioValor1Listener;

public class Friend 
{
	public static void spinner3View(
			final SpinnerInput spinner1, 
			final SpinnerInput spinner2, 
			final SpinnerInput spinner3,
			final StringSpinner3View ss3v
			) {
		
		//Para actualizar el spinner3 cada vez que el spinner1 cambia de valor
		spinner1.setOnPostCambioValorInternoListener(new OnCambioValor1Listener() {
			@Override
			public void onCambioValor(String valor) throws Exception {
				//if(spinner2.noTieneElementos())
				spinner2.onCambioValor();
				setearEditText(spinner1,spinner2,spinner3,ss3v);
			}
		});

		//Para actualizar el EditText con el codigo
		spinner2.setOnPostCambioValorInternoListener(new OnCambioValor1Listener() {
			@Override
			public void onCambioValor(String valor) throws Exception {
				setearEditText(spinner1,spinner2,spinner3,ss3v);
			}
		});
		
		spinner3.setOnPostCambioValorInternoListener(new OnCambioValor1Listener() {
			@Override
			public void onCambioValor(String valor) throws Exception {
				setearEditText(spinner1,spinner2,spinner3,ss3v);							
			}
		});
		

		
	}
	
	private static void setearEditText(
			final SpinnerInput spinner1, 
			final SpinnerInput spinner2,
			final SpinnerInput spinner3,
			final StringSpinner3View ss3v) {
		StringBuilder sb = new StringBuilder();
		if(spinner1.getValor()!=null)
			sb.append(spinner1.getValor());
		if(spinner2.getValor()!=null)
			sb.append(spinner2.getValor());
		if(spinner3.getValor()!=null)
			sb.append(spinner3.getValor());
		util.android.form.respuesta.Friend.setear(ss3v, sb.toString());
		//ss3v.getInput().setearValor(sb.toString());
		//ss3v.getInput().setValor(sb.toString());	
	}
	
	public static void stringBusquedaView(StringBusquedaView sbv, OnCambioValor1Listener listener) {
		sbv.getInput().setOnPostCambioValorInternoListener(listener);
	}
			

	public static void checkboxinput(CheckBoxInput in, OnCambioValor1Listener listener) {
		in.setOnPostCambioValorInternoListener(listener);
	}
	

}
